[書評]「New Relic 実践入門 監視からオブザーバビリティへの変革」は可観測性を学び実践するための一冊
こんにちは、臼田です。
みなさん、よりよい運用してますか?(挨拶
今回は2021年9月15日に発売された書籍「New Relic 実践入門 監視からオブザーバビリティへの変革」の書評です。オブザーバビリティ(可観測性)について概念的にも実践的にもわかりやすい図とともに理解でき、特にNew Relicを活用して、単純な監視ではない、ビジネスに貢献するための運用の実践ができる一冊でした。
この記事ではこの書籍を読んで感じた、どんな人に向いているか、特に良かったところなどを書いていきます。
どんな人に向いているか
一言でいうと、「これからNew Relicを触る人、あるいは触り始めた人が活用できる書籍」です。「New Relic実践入門」というタイトルそのままですね。
逆に言えば、関連するオブザーバビリティについて理解を深めたい、あるいはNew Relicに限らない監視や運用の考え方を学びたいだけであればこの書籍の2割くらいの部分しか堪能できません。
しかし、上記の理解や考え方はしっかりと解説されているため、「なぜオブザーバビリティが必要なのか」をNew Relicの特徴や良さとともに理解できます。「New Relic少し興味あるかも」と思っているのであれば手にとったほうがいいでしょう。きっと「New Relicを使って運用していきたい」と感じるでしょう。
書籍としての対象者は以下のように書かれています。
- アプリケーション開発者
- フロントエンド開発者
- モバイルアプリ開発者
- インフラ管理者
- プロジェクトマネージャー
- プロダクトマネージャー
ざっくり感想
読んで感じた感想をざっくり箇条書きするとこんな感じです。
- オブザーバビリティについてわかりやすく解説されている
- 実画面のグラフが多く、画面を触っていなくても何がどう見れるかわかりやすい
- New Relicは様々な可視性を提供してくれるためやや構成要素が複雑であるが、体系的な説明と、体系に沿った章構成でスムーズに頭に入ってくる
- AWSを利用したサーバーレスアーキテクチャ、Kubernetes、モバイルアプリのパフォーマンス、ビジネスKPI計測など具体的なユースケースに基づく実装パターンが実利用を助ける
目次とそれぞれの概要
大きく3部構成となっています。以下は書籍ページからの抜粋です。
- ■Part 1 New Relicを知る
- 従来の古典的な監視の問題点とオブザーバビリティを備えた次世代の運用監視の必要性を説明するとともに、それを実現するために強力な武器となりえるNew Relicとそれを支えるプラットフォームの概要をしていきます。
- ■Part 2 New Relicを始める
- 実際にNew Relicを使うための基礎知識を身につけるために、システムのエンド・ツー・エンドのオブザーバビリティ特性を提供する、APM、Infrastructure、Synthetics、Browser、Mobile、Logs、New Relic Oneといった全ツールの基本的な使い方を学習します。
- ■Part 3 New Relicを活用する──16のオブザーバビリティ実装パターン
- 応用編として16のオブザーバビリティ実装パターンを紹介します。
Part 1ではオブザーバビリティの話から、わかりやすい図で解説が始まります。現代のITや利用されている技術などの背景を含めて説明され、オブザーバビリティに必要な要素や、メトリクス、ログ、トレースなど必要なデータやその扱いについて、New Relicではそれらをどのように扱うかなど、New Relicを扱うために必要な前提知識が一通り学べます。データを扱うための前提となるセキュリティの考え方なども含まれます。
Part 2では機能の全体像をベースに各機能毎に詳細に説明されます。入り口からして以下の図のようにわかりやすく表現されていますが、全体に渡って概念的な図、実際に表示される画面、画面の各コンポーネントの役割、利用するクエリなど豊富な図があるため、直接画面を触っていなくてもよく理解できます。極端に言うと手を動かす前に一通り目を通してから始めてもいいと感じました。
Part 3は実践的な16個の実装パターンがレベル別に解説されています。レベルというのは低い方からGetting Started / Reactive / Proactive / Data Drivenとなっていて、単純にデータを集めてくるところから、より積極的に対応していく段階まであります。
16個の実装パターンは以下の項目です。
- バックグラウンド(バッチ)アプリ及びGUIアプリの監視パターン
- メッセージングキューでつながる分散トレーシング
- Mobile Crash分析パターン
- Kubernetesオブザーバビリティパターン
- Prometheus + Grafana連携
- W3C Trace Contextを使ったOpen TelemetryとNew Relic Agentでの分散トレーシングバターン
- Webアプリのプロアクティブ対応パターン - Webアプリの障害検知と対応例
- データベースアクセス改善箇所抽出パターン
- ユーザーセントリックメトリクスを用いたフロントエンドパフォーマンス監視パターン
- モバイルアプリのパフォーマンス観測
- 動画プレイヤーのパフォーマンス計測パターン
- アラートノイズを発生させないためのアラート設計パターン
- SRE: Service Levelと4つのゴールデンシグナル可視化パターン
- ビジネスKPI計測パターン
- クラウド移行の可視化パターン
- カオスエンジニアリングとオブザーバビリティ
それぞれ非常に実践的で、構成パターンのメリットや展開方法のコードや操作方法、実際の画面といっしょに解説されています。特に何をすることで目的を達成できるか、という視点で利用方法が詳細に書かれていて、例えば「7. Webアプリのプロアクティブ対応パターン」では「ユーザーの動作環境の依存なく、Webアプリが動いていることを把握する」という目的のために「エラー発生状況をモニター別に確認する」「観測地点別エラー発生率の確認」などのクエリや画面の確認観点などの実践方法が記述されています。
特にいいと感じたところ
ざっくり感想にも書きましたが、とにかくオブザーバビリティを理解してNew Relicを活用していく、という点に対して優れています。図も多く複雑な構成要素がスッと入ってきます。
具体的な内容ベースでは、やはり実践入門ということでPart 3の実装パターンが参考になりました。3つぐらいかいつまんで良かったところを紹介します。
Amazon SQSのトレーシング解説
「2. メッセージングキューでつながる分散トレーシング」内でAmazon SQSを利用する場合の分散トレーシング手法について具体的な解説がありました。
単純にできますよ、という話ではなくて、メッセージングキューを挟むトランザクションをつなげる仕組みが標準化されていないことや、その中でもW3C Trace Contextとしての標準化が進められている背景を含めながら、どのように実装すれば適切であるかが解説されていて、原理や標準を含めた丁寧な説明を心がけている印象を強く感じました。
firstInputDelay(FID)を使った分析手法の解説
「9. ユーザーセントリックメトリクスを用いたフロントエンドパフォーマンス監視パターン」にてユーザーエクスペリエンスを改善するためにはペイントメトリクスだけでなくインタラクティブメトリクスを利用して計測し、改善する必要があるという解説があります。
この中でfirstInputDelay(FID)を使った分析手法の解説では、ユーザーが最初にサイトを操作したときからサイトが応答するまでの時間を測定することでユーザーが感じるラグを確認できることや、FIDを短くするために確認する観点がまとめられていました。
この項目以外でも、実際の運用を見てきているからこその確認手法や観点が至るところに盛り込まれていました。
ビジネスKPIを可視化する
「14. ビジネスKPI計測パターン」では単純にシステムの視点ではなく、ビジネスの視点でKPI(重要業績評価指標)を可視化し達成するための活用方法がまとめられています。
ECサイトやSaaS事業者向けのダッシュボードなどの例とともに、カスタムデータを活用してビジネスKPIに必要なデータを収集する方法が解説されています。
単純なシステムの監視を超えて、様々な方面にオブザーバビリティを追求していてNew Relicの可能性を感じました。
まとめ
書籍「New Relic 実践入門 監視からオブザーバビリティへの変革」について感想などを紹介しました。
Nwe Relicをこれから活用するのであれば必読の一冊です。あるいは従来の監視から脱却したいと感じている方などで、少しでもNew Relicに興味があるのであれば、この本でNew Relicが出来ることを見て世界が広がると思います。
気になる方は翔泳社サイト、あるいはAmazonで物理本とKindleどちらも購入できますので手にとって見てはいかがでしょうか?